package mviewer.types;

public class Transformation {

	private IWritableVector translation, rotation, scaling;

	public Transformation() {
		translation	= new VectorData();
		rotation	= new VectorData();
		scaling		= new VectorData(1f, 1f, 1f);
	}

	public IWritableVector getRotation() {
		return rotation;
	}

	public IWritableVector getScaling() {
		return scaling;
	}

	public IWritableVector getTranslation() {
		return translation;
	}

	/*public void resetScaling(int componentHeight, Rectangle modelBounds) {
		float defaultScaling = modelBounds.width > modelBounds.height ? modelBounds.width : modelBounds.height;
		if (defaultScaling==0)
			defaultScaling = 1;
		scaling.setVector(new VectorData(0.7f * componentHeight / defaultScaling));
	}*/

	@Override
	public String toString() {
		return String.format("%s{Rotation : %s, Scaling : %s, Translation : %s}",
			getClass().getName(), rotation, scaling, translation);
	}

}
